package ldh.text.service;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.ByteBuffer;

public interface DataService<T> {

    /**
     * 数据长度
     * @return
     */
    long dataSize();

    /**
     * 加载数据
     * @param position  位置
     * @param size      加载数据长度
     * @return
     */
    T loadData(long position, int size) throws IOException;

    /**
     * 保存数据
     * 大文件保存其中一部分
     * @param file 保存文件
     */
    void saveData(String file, byte[] data, int startPosition, int endPosition);

    /**
     * 保存数据
     * @param file
     * @param data
     */
    void saveData(File file, byte[]data) throws IOException;

}
